21. The Direct FileFlex API Interface
You can directly access the FileFlex engine by passing it an appropriate
set of parameters. We always recommend using the wrapper scripts, but our
users have requested the full list of function calls for the occassional
direct access. So here it is.
FileFlex Parameters
All parameters passed to FileFlex engine must be of the string data type.
These include the function call numbers.
FileFlex Calls by Name
-- DBAverage ------------------------------------------------------
Direct Call: FileFlex(22, numFieldName) / FileFlex(19)
FileFlex DB Call: DBAverage(numFieldName)
-- DBBottom -------------------------------------------------------
Direct Call: FileFlex(12)
FileFlex DB Call: DBBottom()
-- DBBuildSeekExpr ------------------------------------------------
Direct Call: FileFlex(45, indexID, val, ...)
FileFlex DB Call: DBBuildSeekExpr(indexID, val, ...)
-- DBCheckIndex ---------------------------------------------------
Direct Call: FileFlex(34, indexID)
FileFlex DB Call: DBCheckIndex(indexID)
-- DBClose --------------------------------------------------------
Direct Call: FileFlex(4,dbID)
FileFlex DB Call: DBClose(dbID)
-- DBCloseAll -----------------------------------------------------
Direct Call: FileFlex(6)
FileFlex DB Call: DBCloseAll()
-- DBCloseIndex ---------------------------------------------------
Direct Call: FileFlex(8,indexID)
FileFlex DB Call: DBCloseIndex(indexID)
-- DBClosePlatform ------------------------------------------------
Direct Call: ** Not available **
FileFlex DB Call: DBClosePlatform()
Note: This is a script you're expected to write or modify from the
provided wrapper scripts.
-- DBCloseSession -------------------------------------------------
Direct Call: FileFlex(2)
FileFlex DB Call: DBCloseSession()
Note: FileFlex(2) expects to set/check a global variable called gDBActive1030.
Make sure you set gDBActive1030 to "" (empty) before calling FileFlex(2).
If gDBActive1030 is already empty, then don't call FileFlex(2).
-- DBCopyright ----------------------------------------------------
Direct Call: FileFlex(999)
FileFlex DB Call: DBCopyright()
-- DBConvertCRLF --------------------------------------------------
Direct Call: FileFlex(41,data,option)
FileFlex DB Call: DBConvertCRLF(data,option)
-- DBCount --------------------------------------------------------
Direct Call: FileFlex(19)
FileFlex DB Call: DBCount()
-- DBCreate -------------------------------------------------------
Direct Call: FileFlex(33, dbName, numFields,
fields, safety)
FileFlex DB Call: DBCreate(dbName, numFields, fields,
safety)
-- DBCreateIndex --------------------------------------------------
Direct Call: FileFlex(31, indexName, indexExpr,
unique, safety)
FileFlex DB Call: DBCreateIndex(indexName, indexExpr,
unique, safety)
-- DBCurrDBNum ----------------------------------------------------
Direct Call: FileFlex(36)
FileFlex DB Call: DBCurrDBNum()
Note: Returns the current db number
-- DBCurrRecNum ---------------------------------------------------
Direct Call: FileFlex(21)
FileFlex DB Call: DBCurrRecNum()
-- DBDatabaseExists -----------------------------------------------
Direct Call: FileFlex(43, datafile[, path])
FileFlex DB Call: DBDatabaseExists(datafile[, path])
-- DBDecrypt ------------------------------------------------------
Direct Call: FileFlex(39, string, key)
FileFlex DB Call: DBDecrypt(string, key)
-- DBDeleteRecs ---------------------------------------------------
Direct Call: FileFlex(15, startRec, endRec)
FileFlex DB Call: DBDeleteRecs(startRec, endRec)
-- DBEncrypt ------------------------------------------------------
Direct Call: FileFlex(38, string, key)
FileFlex DB Call: DBEncrypt(string, key)
-- DBFindMemo -----------------------------------------------------
Direct Call: FileFlex(40, memofield, string)
FileFlex DB Call: DBFindMemo(memofield, string)
-- DBGetCurrRecVal ------------------------------------------------
Direct Call: FileFlex(28, containerType)
FileFlex DB Call: DBGetCurrRecVal(containerType)
Note: If containerType is "B" or "C", FileFlex
attempts to place its values into HyperCard or SuperCard background or card
fields, respectively. This is one of the few places where FileFlex makes
direct HyperCard callbacks. If you're not in HyperCard, don't pass "B"or "C" (choose some other character, like "A", instead).
If containerType is "G", FileFlex attempts to place its field
values into matching global variables, creating them if they don't exist.
This function supports decryption. See Office-Quality
Encryption for syntax.
-- DBGetFieldByName -----------------------------------------------
Direct Call: FileFlex(26, fieldName)
FileFlex DB Call: DBGetFieldByName(fieldName)
Note: This function supports decryption. See Office-Quality
Encryption for syntax.
-- DBGetFieldByNum ------------------------------------------------
Direct Call: FileFlex(27, fieldNum)
FileFlex DB Call: DBGetFieldByNum(fieldNum)
Note: This function supports decryption. See Office-Quality
Encryption for syntax.
-- DBGetGlobal ---------------------------------------------------
Direct Call: FileFlex(201, globalName)
FileFlex DB Call: DBGetGlobal(globalName)
-- DBGetMemo ------------------------------------------------------
Direct Call: FileFlex(24, memoField)
FileFlex DB Call: DBGetMemo(memoField)
Note: This function supports decryption. See Office-Quality
Encryption for syntax.
-- DBGo -----------------------------------------------------------
Direct Call: FileFlex(10,recNum)
FileFlex DB Call: DBGo(recNum)
-- DBIndexExpr ---------------------------------------------------
Direct Call: FileFlex(44,indexID)
FileFlex DB Call: DBIndexExpr(indexID)
-- DBInitPlatform -------------------------------------------------
Direct Call: ** Not Available **
FileFlex DB Call: DBInitPlatform()
Note: This is a script you're expected to write or modify from the
provided wrapper scripts.
-- DBListFields ---------------------------------------------------
Direct Call: FileFlex(29)
FileFlex DB Call: DBListFields()
-- DBLocate (obsolete)--------------------------------------------
Direct Call: FileFlex(35, expr)
FileFlex DB Call: DBLocate(expr)
-- DBListIndexFields --------------------------------------------
Direct Call: FileFlex(46, indexID, delim)
FileFlex DB Call: DBListIndexFields(indexID, delim)
-- DBMaxRecs -----------------------------------------------------
Direct Call: FileFlex(47)
FileFlex DB Call: DBMaxRecs()
-- DBOpenSession --------------------------------------------------
Direct Call: FileFlex(1)
FileFlex DB Call: DBOpenSession()
Note: FileFlex(1) expects to set/check a global variable called gDBActive1030.
Make sure you set gDBActive1030 to "true" before calling FileFlex(1).
If gDBActive1030 is already true, then don't call FileFlex(1).
-- DBPack ---------------------------------------------------------
Direct Call: FileFlex(18)
FileFlex DB Call: DBPack()
-- DBPlatform -----------------------------------------------------
Direct Call: FileFlex(42)
FileFlex DB Call: DBPlatform()
-- DBQuery --------------------------------------------------------
Direct Call: FileFlex(35, expr)
FileFlex DB Call: DBQuery(expr)
-- DBRecallRecs ---------------------------------------------------
Direct Call: FileFlex(16, startRec, endRec)
FileFlex DB Call: DBRecallRecs(startRec, endRec)
-- DBRecordDeleted ------------------------------------------------
Direct Call: FileFlex(20, recNum)
FileFlex DB Call: DBRecordDeleted(recNum)
-- DBReindex ------------------------------------------------------
Direct Call: FileFlex(32, indexID)
FileFlex DB Call: DBReindex(indexID)
-- DBSeek ---------------------------------------------------------
Direct Call: FileFlex(13, seekExpr)
FileFlex DB Call: DBSeek(seekExpr)
-- DBSelect -------------------------------------------------------
Direct Call: FileFlex(5,dbID)
FileFlex DB Call: DBSelect(dbID)
-- DBSelectIndex --------------------------------------------------
Direct Call: FileFlex(9,indexID)
FileFlex DB Call: DBSelectIndex(indexID)
-- DBSetGlobal ----------------------------------------------------
Direct Call: FileFlex(202,globalName, globalVal)
FileFlex DB Call: DBSetGlobal(globalName, globalVal)
-- DBSkip ---------------------------------------------------------
Direct Call: FileFlex(14, num)
FileFlex DB Call: DBSkip(num)
-- DBSum ----------------------------------------------------------
Direct Call: FileFlex(22, numFieldName)
FileFlex DB Call: DBSum(numFieldName)
-- DBTop ----------------------------------------------------------
Direct Call: FileFlex(11)
FileFlex DB Call: DBTop()
-- DBUse ----------------------------------------------------------
Direct Call: FileFlex(3,dbName [, pathSpec])
FileFlex DB Call: DBUse(dbName [, pathSpec])
-- DBUseIndex -----------------------------------------------------
Direct Call: FileFlex(7,IndexName [,pathSpec])
FileFlex DB Call: DBUseIndex(IndexName [,pathSpec])
-- DBVersion ------------------------------------------------------
Direct Call: FileFlex(0)
FileFlex DB Call: DBVersion()
-- DBWriteMemo ----------------------------------------------------
Direct Call: FileFlex(25, memoField, memoVal)
FileFlex DB Call: DBWriteMemo(memoField, memoVal)
Note: This function supports encryption. See Office-Quality
Encryption for syntax.
-- DBWriteRec -----------------------------------------------------
Direct Call: FileFlex(30, containerType,recNum
[, value])
FileFlex DB Call: DBWriteRec(containerType,recNum
[, value])
Note: This function supports encryption. See Office-Quality
Encryption for syntax.
-- DBZapRecs ------------------------------------------------------
Direct Call: FileFlex(17, startRec, endRec)
FileFlex DB Call: DBZapRecs(startRec, endRec)
FileFlex Calls by Number
-- 0 --------------------------------------------------------------
Direct Call: FileFlex(0)
FileFlex DB Call: DBVersion()
-- 1 --------------------------------------------------------------
Direct Call: FileFlex(1)
FileFlex DB Call: DBOpenSession()
Note: FileFlex(1) expects to set/check a global variable called gDBActive1030.
Make sure you set gDBActive1030 to "true" before calling FileFlex(1).
If gDBActive1030 is already true, then don't call FileFlex(1).
-- 2 --------------------------------------------------------------
Direct Call: FileFlex(2)
FileFlex DB Call: DBCloseSession()
Note: FileFlex(2) expects to set/check a global variable called gDBActive1030.
Make sure you set gDBActive1030 to "" (empty) before calling FileFlex(2).
If gDBActive1030 is already empty, then don't call FileFlex(2).
-- 3 --------------------------------------------------------------
Direct Call: FileFlex(3,dbName [, pathSpec])
FileFlex DB Call: DBUse(dbName [, pathSpec])
-- 4 --------------------------------------------------------------
Direct Call: FileFlex(4,dbID)
FileFlex DB Call: DBClose(dbID)
-- 5 --------------------------------------------------------------
Direct Call: FileFlex(5,dbID)
FileFlex DB Call: DBSelect(dbID)
-- 6 --------------------------------------------------------------
Direct Call: FileFlex(6)
FileFlex DB Call: DBCloseAll()
-- 7 --------------------------------------------------------------
Direct Call: FileFlex(7,IndexName [, pathSpec])
FileFlex DB Call: DBUseIndex(IndexName [, pathSpec])
-- 8 --------------------------------------------------------------
Direct Call: FileFlex(8,indexID)
FileFlex DB Call: DBCloseIndex(indexID)
-- 9 --------------------------------------------------------------
Direct Call: FileFlex(9,indexID)
FileFlex DB Call: DBSelectIndex(indexID)
-- 10 -------------------------------------------------------------
Direct Call: FileFlex(10,recNum)
FileFlex DB Call: DBGo(recNum)
-- 11 -------------------------------------------------------------
Direct Call: FileFlex(11)
FileFlex DB Call: DBTop()
-- 12 -------------------------------------------------------------
Direct Call: FileFlex(12)
FileFlex DB Call: DBBottom()
-- 13 -------------------------------------------------------------
Direct Call: FileFlex(13, seekExpr)
FileFlex DB Call: DBSeek(seekExpr)
-- 14 -------------------------------------------------------------
Direct Call: FileFlex(14, num)
FileFlex DB Call: DBSkip(num)
-- 15 -------------------------------------------------------------
Direct Call: FileFlex(15, startRec, endRec)
FileFlex DB Call: DBDeleteRecs(startRec, endRec)
-- 16 -------------------------------------------------------------
Direct Call: FileFlex(16, startRec, endRec)
FileFlex DB Call: DBRecallRecs(startRec, endRec)
-- 17 -------------------------------------------------------------
Direct Call: FileFlex(17, startRec, endRec)
FileFlex DB Call: DBZapRecs(startRec, endRec)
-- 18 -------------------------------------------------------------
Direct Call: FileFlex(18)
FileFlex DB Call: DBPack()
-- 19 -------------------------------------------------------------
Direct Call: FileFlex(19)
FileFlex DB Call: DBCount()
-- 20 -------------------------------------------------------------
Direct Call: FileFlex(20, recNum)
FileFlex DB Call: DBRecordDeleted(recNum)
-- 21 -------------------------------------------------------------
Direct Call: FileFlex(21)
FileFlex DB Call: DBCurrRecNum()
-- 22 -------------------------------------------------------------
Direct Call: FileFlex(22, numFieldName)
FileFlex DB Call: DBSum(numFieldName)
-- 23 -------------------------------------------------------------
Direct Call: FileFlex(22, numFieldName) /
FileFlex(19)
FileFlex DB Call: DBAverage(numFieldName)
Note: In FileFlex v1.5/v1.6 there is no function number 23. Instead,
to compute the average, divide the sum of a given field by the number of
records.
-- 24 -------------------------------------------------------------
Direct Call: FileFlex(24, memoField)
FileFlex DB Call: DBGetMemo(memoField)
Note: This function supports decryption. See Office-Quality
Encryption for syntax.
-- 25 -------------------------------------------------------------
Direct Call: FileFlex(25, memoField, memoVal)
FileFlex DB Call: DBWriteMemo(memoField, memoVal)
Note: This function supports encryption. See Office-Quality
Encryption for syntax.
-- 26 -------------------------------------------------------------
Direct Call: FileFlex(26, fieldName)
FileFlex DB Call: DBGetFieldByName(fieldName)
Note: This function supports decryption. See Office-Quality
Encryption for syntax.
-- 27 -------------------------------------------------------------
Direct Call: FileFlex(27, fieldNum)
FileFlex DB Call: DBGetFieldByNum(fieldNum)
Note: This function supports decryption. See Office-Quality
Encryption for syntax.
-- 28 -------------------------------------------------------------
Direct Call: FileFlex(28, containerType)
FileFlex DB Call: DBGetCurrRecVal(containerType)
Note: If containerType is "B" or "C", FileFlex
attempts to place its values into HyperCard or SuperCard background or card
fields, respectively. This is one of the few places where FileFlex makes
direct HyperCard callbacks. If you're not in HyperCard or SuperCard, don't
pass "B" or "C" (choose some other character, like "L",
instead). If containerType is "G", FileFlex attempts to place
its field values into matching global variables, creating them if they don't
exist. This function supports decryption. See Office-Quality
Encryption for syntax.
-- 29 -------------------------------------------------------------
Direct Call: FileFlex(29)
FileFlex DB Call: DBListFields()
-- 30 -------------------------------------------------------------
Direct Call: FileFlex(30, containerType, recNum,
value)
FileFlex DB Call: DBWriteRec(containerType, recNum,
value)
Note: This function supports encryption. See Office-Quality
Encryption for syntax.
-- 31 -------------------------------------------------------------
Direct Call: FileFlex(31, indexName, indexExpr,
unique, safety)
FileFlex DB Call: DBCreateIndex(indexName, indexExpr,
unique, safety)
-- 32 -------------------------------------------------------------
Direct Call: FileFlex(32, indexID)
FileFlex DB Call: DBReindex(indexID)
-- 33 -------------------------------------------------------------
Direct Call: FileFlex(33, dbName, numFields,
fields, safety)
FileFlex DB Call: DBCreate(dbName, numFields, fields,
safety)
-- 34 -------------------------------------------------------------
Direct Call: FileFlex(34, indexID)
FileFlex DB Call: DBCheckIndex(indexID)
-- 35 -------------------------------------------------------------
Direct Call: FileFlex(35, expr)
FileFlex DB Call: DBQuery(expr)
Note: This function number was assigned to DBLocate, which has been
replaced by DBQuery.
-- 36 -------------------------------------------------------------
Direct Call: FileFlex(36)
FileFlex DB Call: DBCurrDBNum()
Note: Returns the current db number
-- 38 -------------------------------------------------------------
Direct Call: FileFlex(38, string, key)
FileFlex DB Call: DBEncrypt(string, key)
-- 39 -------------------------------------------------------------
Direct Call: FileFlex(39, string, key)
FileFlex DB Call: DBDecrypt(string, key)
-- 40 -------------------------------------------------------------
Direct Call: FileFlex(40, memofield, string)
FileFlex DB Call: DBFindMemo(memofield, string)
-- 41 -------------------------------------------------------------
Direct Call: FileFlex(41,data,option)
FileFlex DB Call: DBConvertCRLF(data,option)
-- 42 -------------------------------------------------------------
Direct Call: FileFlex(42)
FileFlex DB Call: DBPlatform()
-- 43 -------------------------------------------------------------
Direct Call: FileFlex(43, datafile[, path])
FileFlex DB Call: DBDatabaseExists(datafile[, path])
-- 43 -------------------------------------------------------------
Direct Call: FileFlex(44,indexID)
FileFlex DB Call: DBIndexExpr(indexID)
-- 45 -------------------------------------------------------------
Direct Call: FileFlex(45, indexID, val, ...)
FileFlex DB Call: DBBuildSeekExpr(indexID, val, ...)
-- 46 -------------------------------------------------------------
Direct Call: FileFlex(46, indexID, delim)
FileFlex DB Call: DBListIndexFields(indexID, delim)
-- 47 -------------------------------------------------------------
Direct Call: FileFlex(47)
FileFlex DB Call: DBMaxRecs()
-- 201 ------------------------------------------------------------
Direct Call: FileFlex(201, globalName)
FileFlex DB Call: DBGetGlobal(globalName)
-- 202 ------------------------------------------------------------
Direct Call: FileFlex(202,globalName, globalVal)
FileFlex DB Call: DBSetGlobal(globalName, globalVal)
-- 999 ------------------------------------------------------------
Direct Call: FileFlex(999)
FileFlex DB Call: DBCopyright()
[Previous Chapter] [Table of Contents] [Next Chapter]
Copyright (c) 1996 David Gewirtz under license to Component Software Corp.
All rights reserved worldwide.